package com.panasonic.cn.cmsc;

import java.io.*;
import java.lang.*;
import java.util.*;
import java.math.*;
import java.sql.SQLException;
import com.fujitsu.fks.jaaf.core.*;

public class SQLMMNU99{
	private Hashtable paramsString     = new Hashtable();
	private Hashtable paramsBigDecimal = new Hashtable();
	private Hashtable paramsFree       = new Hashtable();
	private String lastSql_ = null;

	private String getString(String name){
		if(name==null) return "";
		String returnStr = (String)paramsString.get(name);
		if(returnStr==null) return "";
		return "'"+FrameworkCommon.stringReplaceSQuote(returnStr)+"'";
	}

	private String getBigDecimal(String name){
		if(name==null) return "";
		BigDecimal returnStr = (BigDecimal)paramsBigDecimal.get(name);
		if(returnStr==null) return "";
		return returnStr.toString();
	}

	private String getFree(String name){
		if(name==null) return "";
		String returnStr = (String)paramsFree.get(name);
		if(returnStr==null) return "";
		return returnStr;
	}

	public String getLastSql(){
		return lastSql_;
	}

	public SelectResultRset SELECT_MNU01(FrameworkDbCommon db) throws Exception {
		StringBuffer sql = new StringBuffer();
		sql.append("		SELECT  ");
		sql.append("		DISTINCT");
		sql.append("		MASTER_ID");
		sql.append("		FROM");
		sql.append("		MNU");
		sql.append("		WHERE");
		sql.append("		MENU_TYP "+((getString("MENU_TYP").equals(""))?" is null ":"=")+getString("MENU_TYP")+"");
		sql.append("		AND");
		sql.append("		(");
		sql.append("		AUTH_LEVEL "+((getString("AUTH_LEVEL1").equals(""))?" is null ":"=")+getString("AUTH_LEVEL1")+"");
		sql.append("		OR");
		sql.append("		AUTH_LEVEL "+((getString("AUTH_LEVEL2").equals(""))?" is null ":"=")+getString("AUTH_LEVEL2")+"");
		sql.append("		)");
		sql.append("		AND");
		sql.append("		BSNS_TYP "+((getString("BSNS_TYP").equals(""))?" is null ":"=")+getString("BSNS_TYP")+"");
		db.setSql(sql.toString());
		lastSql_ =sql.toString();
		SelectResultRset srr = db.executeQuery();
		paramsString     = new Hashtable();
		paramsBigDecimal = new Hashtable();
		paramsFree       = new Hashtable();

		return srr;
	}


	public void setMENU_TYP(String value){
		if(value==null) {
			paramsString.remove("MENU_TYP");
			return;
		}
		paramsString.put("MENU_TYP",value);
	}


	public void setAUTH_LEVEL1(String value){
		if(value==null) {
			paramsString.remove("AUTH_LEVEL1");
			return;
		}
		paramsString.put("AUTH_LEVEL1",value);
	}


	public void setAUTH_LEVEL2(String value){
		if(value==null) {
			paramsString.remove("AUTH_LEVEL2");
			return;
		}
		paramsString.put("AUTH_LEVEL2",value);
	}


	public void setBSNS_TYP(String value){
		if(value==null) {
			paramsString.remove("BSNS_TYP");
			return;
		}
		paramsString.put("BSNS_TYP",value);
	}


}
